import 'package:get/get.dart';

import 'index.dart';

class SingleSelectionController extends GetxController {
  SingleSelectionController();

  final state = SingleSelectionState();

  // tap
  void actionCell(int index) {
    if (state.idxs.contains(index)) {
      state.idxs.remove(index);
    } else {
      state.idxs.add(index);
    }
    update();
  }

  void actionSure() {
    Get.back(result: state.idxs);
  }

  /// 在 widget 内存中分配后立即调用。
  @override
  void onInit() {
    state.title = Get.arguments['title'];
    state.list = Get.arguments['list'];
    state.idxs = Get.arguments['select'];
    super.onInit();
  }

  /// 在 onInit() 之后调用 1 帧。这是进入的理想场所
  @override
  void onReady() {
    super.onReady();
  }

  /// 在 [onDelete] 方法之前调用。
  @override
  void onClose() {
    super.onClose();
  }

  /// dispose 释放内存
  @override
  void dispose() {
    super.dispose();
  }
}
